package com.gadgets.cm01.role.repository;

import com.gadgets.cm01.role.dto.RoleOperDTO;
import com.gadgets.cm01.role.dto.RoleQueryDTO;
import com.gadgets.cm01.role.pojo.Role;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author UncleXiu
 * @version V1.0.0
 * @data 2020-09-17
 *
 */
@Mapper
@Repository
public interface IRoleMapper {

    /**
     * 新增角色信息
     * @param role  角色信息
     * @return      新增记录数
     */
    int insertRole(@Param(value = "role") Role role);

    /**
     * 更新角色信息
     * @param role  角色信息
     * @return      新增记录数
     */
    int updateRole(@Param(value = "role") RoleOperDTO role);

    /**
     * 删除角色信息
     * @param roleId    角色id
     * @return          删除角色
     */
    int deleteRole(@Param(value = "roleId") Long roleId);

    /**
     * 条件查询角色信息
     * @param queryDTO  查询条件
     * @return          查询结果
     */
    List<Role> selectRoleInfo(@Param(value = "queryDto") RoleQueryDTO queryDTO);

}
